package com.ruoyi.project.warehouse.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 锁定对象 ry_depot_item
 *
 * @author you
 * @date 2022-09-07
 */
public class LockRyDepotItem extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 单据Id */
    private Long headerId;

    /** 商品Id */
    @Excel(name = "商品Id")
    private Long inventoryId;

    /** 锁定数量 */
    @Excel(name = "锁定数量")
    private Double operNumber;

    /** 金额 */
    private BigDecimal allPrice;

    /** 仓库ID */
    @Excel(name = "仓库ID")
    private Long depotId;

    /** 调拨时，对方仓库Id */
    private Long anotherDepotId;

    /** 类别：0入库/1出库/2锁定 */
    @Excel(name = "类别：0入库/1出库/2锁定")
    private String headerType;

    /** 锁定状态:0锁定1取消 */
    @Excel(name = "锁定状态:0锁定1取消")
    private String lockStatus;

    /** 税率 */
    private BigDecimal taxRate;

    /** 税额 */
    private BigDecimal taxMoney;

    /** 价税合计 */
    private BigDecimal taxLastMoney;

    /** 序列号列表 */
    private String snList;

    /** 批号 */
    private String batchNumber;

    /** 有效日期 */
    private Date expirationDate;

    /** 操作时间： 入库时间/出库时间/锁定时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date operTime;

    /** 关联明细id */
    private Long linkId;

    /** 租户id */
    private Long tenantId;

    /** 删除标记，0未删除，1删除 */
    private String delFlag;

    public Date getOperTime() {
        return operTime;
    }

    public void setOperTime(Date operTime) {
        this.operTime = operTime;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setHeaderId(Long headerId)
    {
        this.headerId = headerId;
    }

    public Long getHeaderId()
    {
        return headerId;
    }
    public void setInventoryId(Long inventoryId)
    {
        this.inventoryId = inventoryId;
    }

    public Long getInventoryId()
    {
        return inventoryId;
    }
    public void setOperNumber(Double operNumber)
    {
        this.operNumber = operNumber;
    }

    public Double getOperNumber()
    {
        return operNumber;
    }
    public void setAllPrice(BigDecimal allPrice)
    {
        this.allPrice = allPrice;
    }

    public BigDecimal getAllPrice()
    {
        return allPrice;
    }
    public void setDepotId(Long depotId)
    {
        this.depotId = depotId;
    }

    public Long getDepotId()
    {
        return depotId;
    }
    public void setAnotherDepotId(Long anotherDepotId)
    {
        this.anotherDepotId = anotherDepotId;
    }

    public Long getAnotherDepotId()
    {
        return anotherDepotId;
    }
    public void setHeaderType(String headerType)
    {
        this.headerType = headerType;
    }

    public String getHeaderType()
    {
        return headerType;
    }
    public void setLockStatus(String lockStatus)
    {
        this.lockStatus = lockStatus;
    }

    public String getLockStatus()
    {
        return lockStatus;
    }
    public void setTaxRate(BigDecimal taxRate)
    {
        this.taxRate = taxRate;
    }

    public BigDecimal getTaxRate()
    {
        return taxRate;
    }
    public void setTaxMoney(BigDecimal taxMoney)
    {
        this.taxMoney = taxMoney;
    }

    public BigDecimal getTaxMoney()
    {
        return taxMoney;
    }
    public void setTaxLastMoney(BigDecimal taxLastMoney)
    {
        this.taxLastMoney = taxLastMoney;
    }

    public BigDecimal getTaxLastMoney()
    {
        return taxLastMoney;
    }
    public void setSnList(String snList)
    {
        this.snList = snList;
    }

    public String getSnList()
    {
        return snList;
    }
    public void setBatchNumber(String batchNumber)
    {
        this.batchNumber = batchNumber;
    }

    public String getBatchNumber()
    {
        return batchNumber;
    }
    public void setExpirationDate(Date expirationDate)
    {
        this.expirationDate = expirationDate;
    }

    public Date getExpirationDate()
    {
        return expirationDate;
    }
    public void setLinkId(Long linkId)
    {
        this.linkId = linkId;
    }

    public Long getLinkId()
    {
        return linkId;
    }
    public void setTenantId(Long tenantId)
    {
        this.tenantId = tenantId;
    }

    public Long getTenantId()
    {
        return tenantId;
    }
    public void setDelFlag(String delFlag)
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag()
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("headerId", getHeaderId())
            .append("inventoryId", getInventoryId())
            .append("operNumber", getOperNumber())
            .append("allPrice", getAllPrice())
            .append("remark", getRemark())
            .append("depotId", getDepotId())
            .append("anotherDepotId", getAnotherDepotId())
            .append("headerType", getHeaderType())
            .append("lockStatus", getLockStatus())
            .append("taxRate", getTaxRate())
            .append("taxMoney", getTaxMoney())
            .append("taxLastMoney", getTaxLastMoney())
            .append("snList", getSnList())
            .append("batchNumber", getBatchNumber())
            .append("expirationDate", getExpirationDate())
            .append("linkId", getLinkId())
            .append("tenantId", getTenantId())
            .append("delFlag", getDelFlag())
            .toString();
    }
}
